package com.atXiao.food.chain;

/**
 * @author: lixiaoxiao
 * @date: 2024/1/12 14:37
 * @version: 1.0
 * @desc:
 */
public class UserService {

    /**
     * 注册handler
     */
  public void login(String username, String password){

      // // 前置校验
      // ValidHandler validHandler = new ValidHandler();
      // // 登录组件
      // LoginHandler loginHandler = new LoginHandler();
      // // 权限校验
      // AuthHandler authHandler = new AuthHandler();
      // validHandler.setNextHandler(loginHandler);
      // loginHandler.setNextHandler(authHandler);
      // // 执行请求
      // validHandler.doHandler(new User(username, password));




      // 使用建造者模式优化后的责任链
      Handler.Builder builder = new Handler.Builder();
      Handler handler = builder.addHandler(new ValidHandler())
              .addHandler(new LoginHandler())
              .addHandler(new AuthHandler()).build();
      handler.doHandler(new User(username, password));


  }


}
